<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">

	<title>OBServer Class Reference</title>

	<link rel="stylesheet" href="../css/style.css">
	<meta name="viewport" content="initial-scale=1, maximum-scale=1.4">
	<meta name="generator" content="appledoc 2.2.1 (build 1334)">
</head>
<body class="appledoc">
	<header>
		<div class="container" class="hide-in-xcode">
			
			<h1 id="library-title">
				<a href="../index.html">OBMessenger </a>
			</h1>

			<p id="developer-home">
				<a href="../index.html">On-Bright</a>
			</p>
			
		</div>
	</header>

	<aside>
		<div class="container">
			<nav>
				<ul id="header-buttons" role="toolbar">
					<li><a href="../index.html">Index</a></li>
<li><a href="../hierarchy.html">Hierarchy</a></li>

					<li id="on-this-page" role="navigation">
						<label>
							On This Page

							<div class="chevron">
								<div class="chevy chevron-left"></div>
								<div class="chevy chevron-right"></div>
							</div>

							<select id="jump-to">
	<option value="top">Jump To&#133;</option>
	

	
	
	<option value="tasks">Tasks</option>
	
	

	
	

	

	
	<optgroup label="Instance Methods">
		
		<option value="//api/name/actionSceneNow:">- actionSceneNow:</option>
		
		<option value="//api/name/bindUser:withDevicesJsonArr:andAction:ifAdmin:">- bindUser:withDevicesJsonArr:andAction:ifAdmin:</option>
		
		<option value="//api/name/deleteOBOXFromServer:forceDelete:">- deleteOBOXFromServer:forceDelete:</option>
		
		<option value="//api/name/deleteScene:">- deleteScene:</option>
		
		<option value="//api/name/discoverNodeWithNodeSerial:andAction:ifAssgnOboxs:">- discoverNodeWithNodeSerial:andAction:ifAssgnOboxs:</option>
		
		<option value="//api/name/getCameraCaptureAddress:success:">- getCameraCaptureAddress:success:</option>
		
		<option value="//api/name/getCameraLiveAddress:success:">- getCameraLiveAddress:success:</option>
		
		<option value="//api/name/messageAlterUser:withAction:">- messageAlterUser:withAction:</option>
		
		<option value="//api/name/modifyNode:withNewName:orDelete:">- modifyNode:withNewName:orDelete:</option>
		
		<option value="//api/name/modifyRoomLocation:isdelete:withLocation:withBuilding:andImageData:">- modifyRoomLocation:isdelete:withLocation:withBuilding:andImageData:</option>
		
		<option value="//api/name/modifyUser:withAction:andPW:asWeight:ifNeedAdmin:">- modifyUser:withAction:andPW:asWeight:ifNeedAdmin:</option>
		
		<option value="//api/name/modifyUserPwd:">- modifyUserPwd:</option>
		
		<option value="//api/name/modifyUserPwd:withPhoneVerify:atZone:usingAppkey:forCode:">- modifyUserPwd:withPhoneVerify:atZone:usingAppkey:forCode:</option>
		
		<option value="//api/name/queryCamera">- queryCamera</option>
		
		<option value="//api/name/queryDeviceCountIfAdmin:orGuest:">- queryDeviceCountIfAdmin:orGuest:</option>
		
		<option value="//api/name/queryDeviceHistoryWithNodeSerial:isStatistics:forDate:toDate:range:">- queryDeviceHistoryWithNodeSerial:isStatistics:forDate:toDate:range:</option>
		
		<option value="//api/name/queryDeviceLocationOfRoom:">- queryDeviceLocationOfRoom:</option>
		
		<option value="//api/name/queryGroup">- queryGroup</option>
		
		<option value="//api/name/queryNewNodesWithSerial:">- queryNewNodesWithSerial:</option>
		
		<option value="//api/name/queryNodeForCount:ofType:withAccount:ifGuest:">- queryNodeForCount:ofType:withAccount:ifGuest:</option>
		
		<option value="//api/name/queryNodeStatus:">- queryNodeStatus:</option>
		
		<option value="//api/name/queryOBOXConfig:">- queryOBOXConfig:</option>
		
		<option value="//api/name/queryOBOXWithAccount:">- queryOBOXWithAccount:</option>
		
		<option value="//api/name/queryOboxLocations:">- queryOboxLocations:</option>
		
		<option value="//api/name/queryOboxStatus:withLocName:andAddr:range:powerOffOnly:">- queryOboxStatus:withLocName:andAddr:range:powerOffOnly:</option>
		
		<option value="//api/name/queryOboxesInfo:">- queryOboxesInfo:</option>
		
		<option value="//api/name/queryRoomLocationOfGuest:orAdmin:">- queryRoomLocationOfGuest:orAdmin:</option>
		
		<option value="//api/name/queryScene">- queryScene</option>
		
		<option value="//api/name/queryUpgradeInfoFromServerWithType:">- queryUpgradeInfoFromServerWithType:</option>
		
		<option value="//api/name/queryUser:">- queryUser:</option>
		
		<option value="//api/name/queryVersionFromServerWithSerial:">- queryVersionFromServerWithSerial:</option>
		
		<option value="//api/name/registerUser:withPW:ifLicense:">- registerUser:withPW:ifLicense:</option>
		
		<option value="//api/name/releaseAllNodesWithSerial:">- releaseAllNodesWithSerial:</option>
		
		<option value="//api/name/renameNodes:withDevices:">- renameNodes:withDevices:</option>
		
		<option value="//api/name/replaceOBOXConfig:toNew:">- replaceOBOXConfig:toNew:</option>
		
		<option value="//api/name/searchNewNodesWithSerial:andAction:withTimeout:">- searchNewNodesWithSerial:andAction:withTimeout:</option>
		
		<option value="//api/name/setCameraAlwayMove:withDirection:andSpeed:">- setCameraAlwayMove:withDirection:andSpeed:</option>
		
		<option value="//api/name/setCameraMove:withDirection:">- setCameraMove:withDirection:</option>
		
		<option value="//api/name/setCameraStopMove:">- setCameraStopMove:</option>
		
		<option value="//api/name/setDeviceLocation:inRoomIndex:withSerial:">- setDeviceLocation:inRoomIndex:withSerial:</option>
		
		<option value="//api/name/setFlightAction:TypeForControll:">- setFlightAction:TypeForControll:</option>
		
		<option value="//api/name/setGroup:withOperate:forLocalBox:ifMembers:andOtherInfo:">- setGroup:withOperate:forLocalBox:ifMembers:andOtherInfo:</option>
		
		<option value="//api/name/setNodeStatus:withDeviceSerial:">- setNodeStatus:withDeviceSerial:</option>
		
		<option value="//api/name/setOBOXCtlPwWithSerial:andNewPw:">- setOBOXCtlPwWithSerial:andNewPw:</option>
		
		<option value="//api/name/setOboxLocation:withLocName:andAddr:">- setOboxLocation:withLocName:andAddr:</option>
		
		<option value="//api/name/setRoomLocation:withBuilding:andImageData:">- setRoomLocation:withBuilding:andImageData:</option>
		
		<option value="//api/name/setScene:forStatus:ifName:ifLocalObox:ifUnitTag:withCondition:withAction:">- setScene:forStatus:ifName:ifLocalObox:ifUnitTag:withCondition:withAction:</option>
		
		<option value="//api/name/setSceneStatus:forStatus:">- setSceneStatus:forStatus:</option>
		
		<option value="//api/name/signInPhoneVerify:atZone:usingAppkey:forCode:">- signInPhoneVerify:atZone:usingAppkey:forCode:</option>
		
		<option value="//api/name/signInUser:withPW:">- signInUser:withPW:</option>
		
		<option value="//api/name/tryLoadLastAccount">- tryLoadLastAccount</option>
		
		<option value="//api/name/updateOBOXInfoToServer:">- updateOBOXInfoToServer:</option>
		
	</optgroup>
	
	
</select>
						</label>
					</li>
				</ul>
			</nav>
		</div>
	</aside>

	<article>
		<div id="overview_contents" class="container">
			<div id="content">
				<main role="main">
					<h1 class="title">OBServer Class Reference</h1>

					
					<div class="section section-specification"><table cellspacing="0"><tbody>
						<tr>
	<th>Inherits from</th>
	<td>NSObject</td>
</tr><tr>
	<th>Declared in</th>
	<td>OBServer.h</td>
</tr>
						</tbody></table></div>
					

                    

					
					
					<div class="section section-tasks">
						<a title="Tasks" name="tasks"></a>
						

						
						

						<div class="task-list">
							<div class="section-method">
	<a name="//api/name/tryLoadLastAccount" title="tryLoadLastAccount"></a>
	<h3 class="method-title"><code><a href="#//api/name/tryLoadLastAccount">&ndash;&nbsp;tryLoadLastAccount</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>auto init account data with manager(key: token, username, weight and others)</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (BOOL)tryLoadLastAccount</code></div>

		    
			

			
			<div class="method-subsection return">
				<h4 class="method-subtitle parameter-title">Return Value</h4>
				<p>get data success or not</p>
			</div>
			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryOBOXWithAccount:" title="queryOBOXWithAccount:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryOBOXWithAccount:">&ndash;&nbsp;queryOBOXWithAccount:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query obox from server that belong to account</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryOBOXWithAccount:(nullable NSString *)<em>admin</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>admin</code></th>
						<td><p>admin_name, nil for current admin account</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryDeviceCountIfAdmin:orGuest:" title="queryDeviceCountIfAdmin:orGuest:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryDeviceCountIfAdmin:orGuest:">&ndash;&nbsp;queryDeviceCountIfAdmin:orGuest:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query node type and count from server that belong to assign account</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryDeviceCountIfAdmin:(nullable NSString *)<em>admin</em> orGuest:(nullable NSString *)<em>guest</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>admin</code></th>
						<td><p>root: list devices belong to admin account</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>guest</code></th>
						<td><p>root/admin: list devices belong to guest if have</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryNodeForCount:ofType:withAccount:ifGuest:" title="queryNodeForCount:ofType:withAccount:ifGuest:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryNodeForCount:ofType:withAccount:ifGuest:">&ndash;&nbsp;queryNodeForCount:ofType:withAccount:ifGuest:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query node device from server that belong to assign account</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryNodeForCount:(NSInteger)<em>count</em> ofType:(DEVICETYPE)<em>type</em> withAccount:(nullable NSString *)<em>admin</em> ifGuest:(nullable NSString *)<em>guest</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>count</code></th>
						<td><p>0 for all, others: num for request</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>admin</code></th>
						<td><p>root: list devices belong to admin account</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>guest</code></th>
						<td><p>root/admin: list devices belong to guest if have</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryOBOXConfig:" title="queryOBOXConfig:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryOBOXConfig:">&ndash;&nbsp;queryOBOXConfig:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query obox config</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryOBOXConfig:(nonnull NSString *)<em>serialID</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>serialID</code></th>
						<td><p>obox serial</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryOboxesInfo:" title="queryOboxesInfo:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryOboxesInfo:">&ndash;&nbsp;queryOboxesInfo:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query oboxes info</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryOboxesInfo:(nonnull NSArray *)<em>boxSerials</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>boxSerials</code></th>
						<td><p>obox serial array</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryVersionFromServerWithSerial:" title="queryVersionFromServerWithSerial:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryVersionFromServerWithSerial:">&ndash;&nbsp;queryVersionFromServerWithSerial:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>get OBOX/NODE version from server</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryVersionFromServerWithSerial:(nonnull NSString *)<em>serialID</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>serialID</code></th>
						<td><p>device serial</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryUpgradeInfoFromServerWithType:" title="queryUpgradeInfoFromServerWithType:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryUpgradeInfoFromServerWithType:">&ndash;&nbsp;queryUpgradeInfoFromServerWithType:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>get OBOX/NODE upgrade info. from server</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryUpgradeInfoFromServerWithType:(OB_VersionType)<em>type</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>type</code></th>
						<td><p>U_NODE or U_OBOX</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/searchNewNodesWithSerial:andAction:withTimeout:" title="searchNewNodesWithSerial:andAction:withTimeout:"></a>
	<h3 class="method-title"><code><a href="#//api/name/searchNewNodesWithSerial:andAction:withTimeout:">&ndash;&nbsp;searchNewNodesWithSerial:andAction:withTimeout:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>let server notice obox to search new nodes</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)searchNewNodesWithSerial:(nonnull NSString *)<em>serialID</em> andAction:(int)<em>isSearch</em> withTimeout:(int)<em>timeout</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>serialID</code></th>
						<td><p>obox serial</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>isSearch</code></th>
						<td><p>action:00close|01search|02flushsearch</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>timeout</code></th>
						<td><p>timeout >30sec</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryNewNodesWithSerial:" title="queryNewNodesWithSerial:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryNewNodesWithSerial:">&ndash;&nbsp;queryNewNodesWithSerial:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>get new found node info</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryNewNodesWithSerial:(nonnull NSString *)<em>serialID</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>serialID</code></th>
						<td><p>obox serial</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/releaseAllNodesWithSerial:" title="releaseAllNodesWithSerial:"></a>
	<h3 class="method-title"><code><a href="#//api/name/releaseAllNodesWithSerial:">&ndash;&nbsp;releaseAllNodesWithSerial:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>let server notice obox to release all node</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)releaseAllNodesWithSerial:(nullable NSString *)<em>serialID</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>serialID</code></th>
						<td><p>obox serial(warning: nil to Broadcast all obox in the account)</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/setOBOXCtlPwWithSerial:andNewPw:" title="setOBOXCtlPwWithSerial:andNewPw:"></a>
	<h3 class="method-title"><code><a href="#//api/name/setOBOXCtlPwWithSerial:andNewPw:">&ndash;&nbsp;setOBOXCtlPwWithSerial:andNewPw:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>let server notice obox to set new control password</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)setOBOXCtlPwWithSerial:(nonnull NSString *)<em>serialID</em> andNewPw:(nullable NSString *)<em>newPw</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>serialID</code></th>
						<td><p>obox serial</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>newPw</code></th>
						<td><p>new control pw (nil to reset)</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/discoverNodeWithNodeSerial:andAction:ifAssgnOboxs:" title="discoverNodeWithNodeSerial:andAction:ifAssgnOboxs:"></a>
	<h3 class="method-title"><code><a href="#//api/name/discoverNodeWithNodeSerial:andAction:ifAssgnOboxs:">&ndash;&nbsp;discoverNodeWithNodeSerial:andAction:ifAssgnOboxs:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>let server notice default or assign oboxs to set muti channel to discover the node</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)discoverNodeWithNodeSerial:(nonnull NSString *)<em>nodeSerial</em> andAction:(BOOL)<em>isDiscover</em> ifAssgnOboxs:(nullable NSArray *)<em>dic</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>nodeSerial</code></th>
						<td><p>node serial ID</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>isDiscover</code></th>
						<td><p>set active to discover or get status</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>dic</code></th>
						<td><p>nil: default or assign</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/registerUser:withPW:ifLicense:" title="registerUser:withPW:ifLicense:"></a>
	<h3 class="method-title"><code><a href="#//api/name/registerUser:withPW:ifLicense:">&ndash;&nbsp;registerUser:withPW:ifLicense:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>user register to server</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)registerUser:(nonnull NSString *)<em>username</em> withPW:(nonnull NSString *)<em>pw</em> ifLicense:(nullable NSString *)<em>acode</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>username</code></th>
						<td><p>user name</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>pw</code></th>
						<td><p>password</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>acode</code></th>
						<td><p>authorize code</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/signInUser:withPW:" title="signInUser:withPW:"></a>
	<h3 class="method-title"><code><a href="#//api/name/signInUser:withPW:">&ndash;&nbsp;signInUser:withPW:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>user sign in to server</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)signInUser:(nonnull NSString *)<em>username</em> withPW:(nonnull NSString *)<em>pw</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>username</code></th>
						<td><p>user name</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>pw</code></th>
						<td><p>password</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/modifyUserPwd:withPhoneVerify:atZone:usingAppkey:forCode:" title="modifyUserPwd:withPhoneVerify:atZone:usingAppkey:forCode:"></a>
	<h3 class="method-title"><code><a href="#//api/name/modifyUserPwd:withPhoneVerify:atZone:usingAppkey:forCode:">&ndash;&nbsp;modifyUserPwd:withPhoneVerify:atZone:usingAppkey:forCode:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>user modify password</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)modifyUserPwd:(nonnull NSString *)<em>newPw</em> withPhoneVerify:(nonnull NSString *)<em>phoneNum</em> atZone:(nonnull NSString *)<em>zoneCode</em> usingAppkey:(nonnull NSString *)<em>appKey</em> forCode:(nonnull NSString *)<em>verifyCode</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>newPw</code></th>
						<td><p>new password(no nil, letter and number total length>=4)</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>phoneNum</code></th>
						<td><p>mobile phone num</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>zoneCode</code></th>
						<td><p>phone zone code (eg.86)</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>appKey</code></th>
						<td><p>sms server app key</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>verifyCode</code></th>
						<td><p>received sms code</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/signInPhoneVerify:atZone:usingAppkey:forCode:" title="signInPhoneVerify:atZone:usingAppkey:forCode:"></a>
	<h3 class="method-title"><code><a href="#//api/name/signInPhoneVerify:atZone:usingAppkey:forCode:">&ndash;&nbsp;signInPhoneVerify:atZone:usingAppkey:forCode:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>user signin with verify code</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)signInPhoneVerify:(nonnull NSString *)<em>phoneNum</em> atZone:(nonnull NSString *)<em>zoneCode</em> usingAppkey:(nonnull NSString *)<em>appKey</em> forCode:(nonnull NSString *)<em>verifyCode</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>phoneNum</code></th>
						<td><p>mobile phone num</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>zoneCode</code></th>
						<td><p>phone zone code (eg.86)</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>appKey</code></th>
						<td><p>sms server app key</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>verifyCode</code></th>
						<td><p>received sms code</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/modifyUserPwd:" title="modifyUserPwd:"></a>
	<h3 class="method-title"><code><a href="#//api/name/modifyUserPwd:">&ndash;&nbsp;modifyUserPwd:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>user modify password</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)modifyUserPwd:(nonnull NSString *)<em>newPW</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>newPW</code></th>
						<td><p>new password(no nil, letter and number total length>=4)</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/modifyUser:withAction:andPW:asWeight:ifNeedAdmin:" title="modifyUser:withAction:andPW:asWeight:ifNeedAdmin:"></a>
	<h3 class="method-title"><code><a href="#//api/name/modifyUser:withAction:andPW:asWeight:ifNeedAdmin:">&ndash;&nbsp;modifyUser:withAction:andPW:asWeight:ifNeedAdmin:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>user modify child user</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)modifyUser:(nonnull NSString *)<em>username</em> withAction:(BOOL)<em>isDelete</em> andPW:(nullable NSString *)<em>pw</em> asWeight:(OBMWeight)<em>weight</em> ifNeedAdmin:(nullable NSString *)<em>adminName</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>username</code></th>
						<td><p>child user name</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>isDelete</code></th>
						<td><p>add or delete</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>pw</code></th>
						<td><p>password</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>weight</code></th>
						<td><p>_userWeight</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryUser:" title="queryUser:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryUser:">&ndash;&nbsp;queryUser:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>user query child users</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryUser:(OBMWeight)<em>weight</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>weight</code></th>
						<td><p>query user&rsquo;s _UserWeight</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/bindUser:withDevicesJsonArr:andAction:ifAdmin:" title="bindUser:withDevicesJsonArr:andAction:ifAdmin:"></a>
	<h3 class="method-title"><code><a href="#//api/name/bindUser:withDevicesJsonArr:andAction:ifAdmin:">&ndash;&nbsp;bindUser:withDevicesJsonArr:andAction:ifAdmin:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>bind devices to user</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)bindUser:(nonnull NSString *)<em>username</em> withDevicesJsonArr:(nonnull NSArray *)<em>arr</em> andAction:(BOOL)<em>isDelete</em> ifAdmin:(nullable NSString *)<em>admin</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>username</code></th>
						<td><p>distribute username</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>arr</code></th>
						<td><p>devices(obox, node, remoter) serial arr</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>isDelete</code></th>
						<td><p>add or delete</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>admin</code></th>
						<td><p>if current account is root, new a guest need assign a admin, nil to new a admin; if current account is admin, can only new a guest.</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/messageAlterUser:withAction:" title="messageAlterUser:withAction:"></a>
	<h3 class="method-title"><code><a href="#//api/name/messageAlterUser:withAction:">&ndash;&nbsp;messageAlterUser:withAction:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>message alter for client</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)messageAlterUser:(nonnull NSString *)<em>phoneNum</em> withAction:(BOOL)<em>enable</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>phoneNum</code></th>
						<td><p>telephone Num</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>enable</code></th>
						<td><p>isEnable alter</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/updateOBOXInfoToServer:" title="updateOBOXInfoToServer:"></a>
	<h3 class="method-title"><code><a href="#//api/name/updateOBOXInfoToServer:">&ndash;&nbsp;updateOBOXInfoToServer:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>add/update obox to server</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)updateOBOXInfoToServer:(nonnull NSDictionary *)<em>dic</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>dic</code></th>
						<td><p>obox configuration</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/deleteOBOXFromServer:forceDelete:" title="deleteOBOXFromServer:forceDelete:"></a>
	<h3 class="method-title"><code><a href="#//api/name/deleteOBOXFromServer:forceDelete:">&ndash;&nbsp;deleteOBOXFromServer:forceDelete:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>delete obox from server</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)deleteOBOXFromServer:(nonnull NSString *)<em>serialID</em> forceDelete:(BOOL)<em>yesOrNo</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>serialID</code></th>
						<td><p>obox serial</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>yesOrNo</code></th>
						<td><p>force delete</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/replaceOBOXConfig:toNew:" title="replaceOBOXConfig:toNew:"></a>
	<h3 class="method-title"><code><a href="#//api/name/replaceOBOXConfig:toNew:">&ndash;&nbsp;replaceOBOXConfig:toNew:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>replace obox by old Serial to dest new obox serial</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)replaceOBOXConfig:(nonnull NSString *)<em>sourceSerial</em> toNew:(nonnull NSString *)<em>destSerial</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>sourceSerial</code></th>
						<td><p>source obox serial ID</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>destSerial</code></th>
						<td><p>dest obox serialID</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/modifyNode:withNewName:orDelete:" title="modifyNode:withNewName:orDelete:"></a>
	<h3 class="method-title"><code><a href="#//api/name/modifyNode:withNewName:orDelete:">&ndash;&nbsp;modifyNode:withNewName:orDelete:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>modify node name (hard modify)</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)modifyNode:(nonnull NSString *)<em>serial</em> withNewName:(nullable NSString *)<em>name</em> orDelete:(BOOL)<em>isDelete</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>serial</code></th>
						<td><p>node serial ID</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>name</code></th>
						<td><p>node new name(3 Chinese characters or 16 English letters)</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>isDelete</code></th>
						<td><p>modify or delete</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/renameNodes:withDevices:" title="renameNodes:withDevices:"></a>
	<h3 class="method-title"><code><a href="#//api/name/renameNodes:withDevices:">&ndash;&nbsp;renameNodes:withDevices:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>batch rename devices (server modify)</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)renameNodes:(nonnull NSString *)<em>newGlobalName</em> withDevices:(nonnull NSArray *)<em>deviceSerials</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>newGlobalName</code></th>
						<td><p>new Global Name</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>deviceSerials</code></th>
						<td><p>devices serial jsonArr</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/setNodeStatus:withDeviceSerial:" title="setNodeStatus:withDeviceSerial:"></a>
	<h3 class="method-title"><code><a href="#//api/name/setNodeStatus:withDeviceSerial:">&ndash;&nbsp;setNodeStatus:withDeviceSerial:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>setting node status</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)setNodeStatus:(nonnull NSString *)<em>status</em> withDeviceSerial:(nonnull NSString *)<em>serial</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>status</code></th>
						<td><p>status hexstring</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>serial</code></th>
						<td><p>node serial id</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryNodeStatus:" title="queryNodeStatus:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryNodeStatus:">&ndash;&nbsp;queryNodeStatus:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>return nodes device config with status</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryNodeStatus:(nonnull NSArray *)<em>nodes</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>nodes</code></th>
						<td><p>nodes serial json array</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/setGroup:withOperate:forLocalBox:ifMembers:andOtherInfo:" title="setGroup:withOperate:forLocalBox:ifMembers:andOtherInfo:"></a>
	<h3 class="method-title"><code><a href="#//api/name/setGroup:withOperate:forLocalBox:ifMembers:andOtherInfo:">&ndash;&nbsp;setGroup:withOperate:forLocalBox:ifMembers:andOtherInfo:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>setting group or execute</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)setGroup:(nonnull NSString *)<em>groupID</em> withOperate:(ServerGroupOperation)<em>otype</em> forLocalBox:(nullable NSString *)<em>boxSerial</em> ifMembers:(nullable NSArray *)<em>dic</em> andOtherInfo:(nullable NSString *)<em>nameOrState</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>groupID</code></th>
						<td><p>group ID for modify (no mean for create)</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>otype</code></th>
						<td><p>ServerGroupOperation enum</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>dic</code></th>
						<td><p>groupMember serial JsonArr if needed</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>nameOrState</code></th>
						<td><p>Name for create or rename | execute state if Needed</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryGroup" title="queryGroup"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryGroup">&ndash;&nbsp;queryGroup</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query group info (server group info)</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryGroup</code></div>

		    
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/setScene:forStatus:ifName:ifLocalObox:ifUnitTag:withCondition:withAction:" title="setScene:forStatus:ifName:ifLocalObox:ifUnitTag:withCondition:withAction:"></a>
	<h3 class="method-title"><code><a href="#//api/name/setScene:forStatus:ifName:ifLocalObox:ifUnitTag:withCondition:withAction:">&ndash;&nbsp;setScene:forStatus:ifName:ifLocalObox:ifUnitTag:withCondition:withAction:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>set scene (override!)</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)setScene:(int)<em>index</em> forStatus:(BOOL)<em>isEnable</em> ifName:(nullable NSString *)<em>name</em> ifLocalObox:(nullable NSString *)<em>serial</em> ifUnitTag:(nullable NSString *)<em>localTag</em> withCondition:(nullable NSArray *)<em>condtionLists</em> withAction:(nullable NSArray *)<em>actionLists</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>index</code></th>
						<td><p>scene index (0 to create, serverLocalIndex when is local scene)</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>isEnable</code></th>
						<td><p>status enable or not</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>name</code></th>
						<td><p>create or rename scenc name</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>serial</code></th>
						<td><p>create local scene for obox-serialId,nil for server scene, ONLY crete!</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>localTag</code></th>
						<td><p>tag for link scene</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>condtionLists</code></th>
						<td><p>conditionList data array, override(using <a href="../Classes/OBModel.html">OBModel</a> to make condtionList)</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>actionLists</code></th>
						<td><p>actionList data array, override(using <a href="../Classes/OBModel.html">OBModel</a> to make actionList)</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryScene" title="queryScene"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryScene">&ndash;&nbsp;queryScene</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query scenes info</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryScene</code></div>

		    
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/setSceneStatus:forStatus:" title="setSceneStatus:forStatus:"></a>
	<h3 class="method-title"><code><a href="#//api/name/setSceneStatus:forStatus:">&ndash;&nbsp;setSceneStatus:forStatus:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>execute scene as enable/disable</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)setSceneStatus:(int)<em>index</em> forStatus:(BOOL)<em>isEnable</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>index</code></th>
						<td><p>scene index</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>isEnable</code></th>
						<td><p>scene active?</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/actionSceneNow:" title="actionSceneNow:"></a>
	<h3 class="method-title"><code><a href="#//api/name/actionSceneNow:">&ndash;&nbsp;actionSceneNow:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>execute scene action right now</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)actionSceneNow:(int)<em>index</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>index</code></th>
						<td><p>scene index</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/deleteScene:" title="deleteScene:"></a>
	<h3 class="method-title"><code><a href="#//api/name/deleteScene:">&ndash;&nbsp;deleteScene:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>delete scene</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)deleteScene:(int)<em>index</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>index</code></th>
						<td><p>scene index</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/setRoomLocation:withBuilding:andImageData:" title="setRoomLocation:withBuilding:andImageData:"></a>
	<h3 class="method-title"><code><a href="#//api/name/setRoomLocation:withBuilding:andImageData:">&ndash;&nbsp;setRoomLocation:withBuilding:andImageData:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>set room location info</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)setRoomLocation:(nonnull NSString *)<em>name</em> withBuilding:(nullable NSString *)<em>build</em> andImageData:(nonnull NSData *)<em>uploadImage</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>name</code></th>
						<td><p>room name</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>build</code></th>
						<td><p>building name</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>uploadImage</code></th>
						<td><p>room background img data</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/modifyRoomLocation:isdelete:withLocation:withBuilding:andImageData:" title="modifyRoomLocation:isdelete:withLocation:withBuilding:andImageData:"></a>
	<h3 class="method-title"><code><a href="#//api/name/modifyRoomLocation:isdelete:withLocation:withBuilding:andImageData:">&ndash;&nbsp;modifyRoomLocation:isdelete:withLocation:withBuilding:andImageData:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>modify room location info</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)modifyRoomLocation:(int)<em>index</em> isdelete:(BOOL)<em>isDelete</em> withLocation:(nullable NSString *)<em>name</em> withBuilding:(nullable NSString *)<em>build</em> andImageData:(nullable NSData *)<em>uploadImage</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>index</code></th>
						<td><p>index of room</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>isDelete</code></th>
						<td><p>delete or modify</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>name</code></th>
						<td><p>room name if modify</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>build</code></th>
						<td><p>building name if modify</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>uploadImage</code></th>
						<td><p>room img data if modify</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryRoomLocationOfGuest:orAdmin:" title="queryRoomLocationOfGuest:orAdmin:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryRoomLocationOfGuest:orAdmin:">&ndash;&nbsp;queryRoomLocationOfGuest:orAdmin:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query room location of account</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryRoomLocationOfGuest:(nullable NSString *)<em>guest</em> orAdmin:(nullable NSString *)<em>admin</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>guest</code></th>
						<td><p>if admin/root, query assign quest account&rsquo;s rooms infos</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>admin</code></th>
						<td><p>if root, query assign admin account&rsquo;s rooms infos</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/setDeviceLocation:inRoomIndex:withSerial:" title="setDeviceLocation:inRoomIndex:withSerial:"></a>
	<h3 class="method-title"><code><a href="#//api/name/setDeviceLocation:inRoomIndex:withSerial:">&ndash;&nbsp;setDeviceLocation:inRoomIndex:withSerial:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>set device location asix in room</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)setDeviceLocation:(CGPoint)<em>axis</em> inRoomIndex:(int)<em>location</em> withSerial:(nonnull NSString *)<em>serialID</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>axis</code></th>
						<td><p>device axis(x,y)</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>location</code></th>
						<td><p>room index</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>serialID</code></th>
						<td><p>device serial ID</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryDeviceLocationOfRoom:" title="queryDeviceLocationOfRoom:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryDeviceLocationOfRoom:">&ndash;&nbsp;queryDeviceLocationOfRoom:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query device location info of room</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryDeviceLocationOfRoom:(int)<em>location</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>location</code></th>
						<td><p>room index</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/setOboxLocation:withLocName:andAddr:" title="setOboxLocation:withLocName:andAddr:"></a>
	<h3 class="method-title"><code><a href="#//api/name/setOboxLocation:withLocName:andAddr:">&ndash;&nbsp;setOboxLocation:withLocName:andAddr:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>set obox location info</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)setOboxLocation:(nonnull NSString *)<em>serialID</em> withLocName:(nonnull NSString *)<em>name</em> andAddr:(nonnull NSString *)<em>addr</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>serialID</code></th>
						<td><p>obox serial ID</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>name</code></th>
						<td><p>location name</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>addr</code></th>
						<td><p>location address</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryOboxLocations:" title="queryOboxLocations:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryOboxLocations:">&ndash;&nbsp;queryOboxLocations:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query obox location history</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryOboxLocations:(nonnull NSString *)<em>serialID</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>serialID</code></th>
						<td><p>obox serial ID</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryOboxStatus:withLocName:andAddr:range:powerOffOnly:" title="queryOboxStatus:withLocName:andAddr:range:powerOffOnly:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryOboxStatus:withLocName:andAddr:range:powerOffOnly:">&ndash;&nbsp;queryOboxStatus:withLocName:andAddr:range:powerOffOnly:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query obox status history for location (name and address)</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryOboxStatus:(nonnull NSString *)<em>serialID</em> withLocName:(nonnull NSString *)<em>name</em> andAddr:(nonnull NSString *)<em>addr</em> range:(NSRange)<em>range</em> powerOffOnly:(BOOL)<em>isGrep</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>serialID</code></th>
						<td><p>obox serial ID</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>name</code></th>
						<td><p>location name</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>addr</code></th>
						<td><p>location address</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>range</code></th>
						<td><p>info range</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>isGrep</code></th>
						<td><p>onLine|offLine or powerOn|powerOff</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryDeviceHistoryWithNodeSerial:isStatistics:forDate:toDate:range:" title="queryDeviceHistoryWithNodeSerial:isStatistics:forDate:toDate:range:"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryDeviceHistoryWithNodeSerial:isStatistics:forDate:toDate:range:">&ndash;&nbsp;queryDeviceHistoryWithNodeSerial:isStatistics:forDate:toDate:range:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query device status history</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryDeviceHistoryWithNodeSerial:(nonnull NSString *)<em>nodeSerial</em> isStatistics:(BOOL)<em>isStatis</em> forDate:(nonnull NSDate *)<em>date</em> toDate:(nonnull NSDate *)<em>endDate</em> range:(NSRange)<em>pagingRange</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>nodeSerial</code></th>
						<td><p>device serial</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>isStatis</code></th>
						<td><p>ask for statistics for one day</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>date</code></th>
						<td><p>date for statistics or start-date for history</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>endDate</code></th>
						<td><p>end-date for history</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>pagingRange</code></th>
						<td><p>paging range for history</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/queryCamera" title="queryCamera"></a>
	<h3 class="method-title"><code><a href="#//api/name/queryCamera">&ndash;&nbsp;queryCamera</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query camera on server</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)queryCamera</code></div>

		    
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/getCameraLiveAddress:success:" title="getCameraLiveAddress:success:"></a>
	<h3 class="method-title"><code><a href="#//api/name/getCameraLiveAddress:success:">&ndash;&nbsp;getCameraLiveAddress:success:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query camera Live url</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)getCameraLiveAddress:(nonnull NSString *)<em>deviceSerial</em> success:(nullable void ( ^ ) ( NSArray *_Nonnull liveInfos ))<em>liveInfo</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>deviceSerial</code></th>
						<td><p>camera serial</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/getCameraCaptureAddress:success:" title="getCameraCaptureAddress:success:"></a>
	<h3 class="method-title"><code><a href="#//api/name/getCameraCaptureAddress:success:">&ndash;&nbsp;getCameraCaptureAddress:success:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>query camera capture pic url</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)getCameraCaptureAddress:(nonnull NSString *)<em>deviceSerial</em> success:(nullable void ( ^ ) ( NSURL *_Nonnull picUrl ))<em>capture</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>deviceSerial</code></th>
						<td><p>camera serial</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/setCameraMove:withDirection:" title="setCameraMove:withDirection:"></a>
	<h3 class="method-title"><code><a href="#//api/name/setCameraMove:withDirection:">&ndash;&nbsp;setCameraMove:withDirection:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>let camera move, auto stop after 1s</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)setCameraMove:(nonnull NSString *)<em>deviceSerial</em> withDirection:(ServerCameraDirection)<em>direction</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>deviceSerial</code></th>
						<td><p>camera serial</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>direction</code></th>
						<td><p>move Direction or zoom</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/setCameraAlwayMove:withDirection:andSpeed:" title="setCameraAlwayMove:withDirection:andSpeed:"></a>
	<h3 class="method-title"><code><a href="#//api/name/setCameraAlwayMove:withDirection:andSpeed:">&ndash;&nbsp;setCameraAlwayMove:withDirection:andSpeed:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>let camera move always, need stop manual</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)setCameraAlwayMove:(nonnull NSString *)<em>deviceSerial</em> withDirection:(ServerCameraDirection)<em>dire</em> andSpeed:(ServerCameraSpeed)<em>speed</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>deviceSerial</code></th>
						<td><p>camera serial</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>dire</code></th>
						<td><p>move Direction or zoom</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>speed</code></th>
						<td><p>move Speed</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/setCameraStopMove:" title="setCameraStopMove:"></a>
	<h3 class="method-title"><code><a href="#//api/name/setCameraStopMove:">&ndash;&nbsp;setCameraStopMove:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>let camera stop move</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)setCameraStopMove:(nonnull NSString *)<em>deviceSerial</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>deviceSerial</code></th>
						<td><p>camera serial</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div><div class="section-method">
	<a name="//api/name/setFlightAction:TypeForControll:" title="setFlightAction:TypeForControll:"></a>
	<h3 class="method-title"><code><a href="#//api/name/setFlightAction:TypeForControll:">&ndash;&nbsp;setFlightAction:TypeForControll:</a></code>
</h3>

	<div class="method-info">
		<div class="pointy-thing"></div>

		<div class="method-info-container">
			
			
			<div class="method-subsection brief-description">
				<p>set Flight Action</p>
			</div>
			
		    

			<div class="method-subsection method-declaration"><code>- (void)setFlightAction:(nonnull NSString *)<em>Serial</em> TypeForControll:(ServerFlightAction)<em>type</em></code></div>

		    
			
			<div class="method-subsection arguments-section parameters">
				<h4 class="method-subtitle parameter-title">Parameters</h4>
				<table class="argument-def parameter-def">
				
					<tr>
						<th scope="row" class="argument-name"><code>Serial</code></th>
						<td><p>Flight serial</p></td>
					</tr>
				
					<tr>
						<th scope="row" class="argument-name"><code>type</code></th>
						<td><p>for FlightAction</p></td>
					</tr>
				
				</table>
			</div>
			

			

			

			

			

			

			
			<div class="method-subsection declared-in-section">
				<h4 class="method-subtitle">Declared In</h4>
				<p><code class="declared-in-ref">OBServer.h</code></p>
			</div>
			
			
		</div>
	</div>
</div>
						</div>
						
					</div>
					
					

                    
                    
          
				</main>

				<footer>
					<div class="footer-copyright">
						
						<p class="copyright">Copyright &copy; 2017 On-Bright. All rights reserved. Updated: 2017-06-09</p>
						
						
						<p class="generator">Generated by <a href="http://appledoc.gentlebytes.com">appledoc 2.2.1 (build 1334)</a>.</p>
						
					</div>
				</footer>
			</div>
		</div>
	</article>

	<script src="../js/script.js"></script>
</body>
</html>